1. Field of the Invention
The invention relates to digital signal processing. More specifically, the invention relates to a recording technique applicable to a media stream, which provides enhanced editing features.
2. Related Art
Recording of a media stream, for example an audio stream, has in the past typically been recorded on a continuous tape. At the time recording was to begin, a user would punch in and the tape would begin to record continuously until the user punched out. The subsequent punch in would take up from the point of the previous punch out. Ultimately, for editing purposes it might be desirable to rewind the tape and record over some portion of it. The result achieved might be for example, a segment of the original recording followed by a segment that was recorded over followed by more of the original recording. In this technique the original recording in the rerecorded segment is lost and cannot be recovered. Accordingly, this type of editing is known as destructive editing.
More recently, the use of computers and more particularly random access storage media in sound recording has significantly changed the format and editing possibilities available. Two such possibilities are non-linear editing and non-destructive editing. Non-linear editing amounts to the manipulation of pointers to media files. Non-destructive editing requires that all original media files be maintained. This permits edits to be undone, including a record over edit, simply by pointer manipulation. The down side to non-destructive editing is that it uses more disk space than is represented to the user. In spite of this down side, non-destructive editing has gained wide acceptance.
FIG. 1 is a diagram of an example of a prior art non-linear non-destructive editing technique. The user view of a media track is an event list. An event is a software object including a media file ID, an off-set into the media file, and a length from the offset. For example, a first media file 1 might be given ID 1. The event may then have an offset of zero, meaning it starts at the first sample of the media file 1, and a length of ten, meaning that the first ten samples beginning at the offset (here zero) will appear in the user view of the recording. Thus, referring to FIG. 1, the first media file 1 with ID 1 and a second media file 2 with ID 2 are saved to a random access medium. A user's view 10 of the track is an event list having three events of the form ID, offset, length: 1, 0, 10; 2, 0, 10 and 1, 20, 10. This assumes a length of ten samples which is artificially short for most real world applications, but nevertheless, suitable for illustration. Thus, while the random access device such as a hard disk contains media file 1 in its entirety and media file 2 in its entirety, from the user perspective the track contains the first ten samples of media file 1, followed by rerecorded region 8 containing ten samples of media file 2, which is in turn followed by the last ten samples from media file 1. The dotted lines in media file 1 delimit the rerecorded region 8 from the users perspective.
Notably, the beginning of media file 1 coincides exactly with the punch in point 5 and the end of media file 1 coincides exactly with the punch out point 6. An analogous case exists with respect to media file 2. The punch in point 5 and the punch out point 6 are the points at which the recording device receives the signal to begin recording or end recording respectively. Thus, particularly in the editing context where one is trying to record over a region of an existing track, a high degree of precision is required to properly time the begin and end of the rerecorded region 8 to achieve the desired effect. Even using nonlinear and nondestructive editing techniques if the punch in is too late or the punch out is too early, media file 2 will need to be discarded and another attempt to record the desired segment will be required.
In view of the foregoing, it would be desirable to be able to accommodate the imprecision of users punching in and punching out, thereby providing enhanced editing possibilities and improved editing efficiency.